{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "数据标准化：\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "# 定义存储数据的x，y\n",
    "x, y =[], []\n",
    "with open('./file/prices.txt','r') as f:\n",
    "    for sample in f.readlines():\n",
    "        _x, _y = sample.split(',')\n",
    "        x.append(float(_x))\n",
    "        y.append(float(_y))\n",
    "\n",
    "# 转换为数组\n",
    "x, y = np.array(x), np.array(y)\n",
    "\n",
    "# 标准化\n",
    "# print(x.std())  # 标准差方程 std（）\n",
    "x =(x-x.mean())/x.std()\n",
    "# print(x)\n",
    "\n",
    "#散点图显示\n",
    "plt.figure()\n",
    "plt.scatter(x, y, c='g', s=6)\n",
    "print('数据标准化：')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 训练方法\n",
    "\n",
    "# 在（-2，4 ）区间内 取100个点\n",
    "x0 = np.linspace(-2,4,100)\n",
    "# polyfit 多项式拟合求解方法\n",
    "# polyval 根据polifit得到的损失最小的参数p 计算出100个多项式返回的值，即预测值\n",
    "# deg 代表多项式的次数\n",
    "def get_model(deg):\n",
    "    return lambda input_x = x0: np.polyval(np.polyfit(x,y,deg), input_x)                                   "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "96732238800.35297\n",
      "96709317398.4086\n",
      "83380464377.45616\n",
      "77221612959.65364\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 根据 不同的deg，即多项式的次数，测试不同的损失\n",
    "# get_cost 损失函数\n",
    "def get_cost(deg, input_x, input_y):\n",
    "    return 0.5*((get_model(deg)(input_x)-input_y)**2).sum()\n",
    "\n",
    "# 测试用的次数\n",
    "test_set = (1,2,5,9)\n",
    "\n",
    "# 测试开始  每次输出损失\n",
    "for i in test_set:\n",
    "    print(get_cost(i, x, y))\n",
    "\n",
    "# 画出图像\n",
    "plt.scatter(x,y,c='g',s=20)\n",
    "for i in test_set:\n",
    "    plt.plot(x0, get_model(i)(), label=\"degree ={}\".format(i))\n",
    "\n",
    "# 设置横纵坐标的范围\n",
    "plt.xlim(-2,4)\n",
    "plt.ylim(1e5,8e5)\n",
    "# 正确显示label\n",
    "plt.legend()\n",
    "# 显示画面\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 方法总结：\n",
    "## 1 数据预处理\n",
    "### 1.1 数据标准化\n",
    "## 2 设计模型\n",
    "### 2.1 损失函数\n",
    "### 2.2 训练模型 求损失函数最小的解\n",
    "## 3 模型评估\n",
    "### 3.1 是否过拟合，是否欠拟合\n",
    "### 3.2 数据可视化\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
